main() {int,j,m,n;i=10;j=20;m=++i;n=j++;printf("%d,%d,%d.%d\n",i,j,m,n)}的运行结果是?谢谢

来源:百度知道 编辑:UC知道 时间:2024/09/20 06:45:00

11,21,11.20

11,(因为对i自加了一次)
21,(对j也自加了一次
11.(因为是前置自加。所以取i加1后的值。也就是11)
20(因为是后置自加。所以取j加1前的值。也就是20)

那位老兄说的太对了,答案就是他说的,一看你就是c初级入门,就给你解释一下:++i就表示先让i自加一,然后把结果给m,所以i和m都是11;但j++表示先把j的值给n,然后再自加1,所以n是20,而j是21,好好学啊!!!!

首先,你的程序出错了。应该你的int 后是i也就是在j的前面有i.估计你没编译过吧。
答案是:11,21,11,20
至于原因,楼上的说得很清楚